<!--
  Copyright JS Foundation and other contributors, http://js.foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<script type="text/x-red" data-help-name="http in">
    <p>创建用于创建Web服务的HTTP端点。</p>
    <p><b>注意：</b>该节点不发送对请求的任何响应。必须在下游节点中包含HTTP响应节点才能完成请求。</p>
    <h3>输出</h3>
    <dl class="message-properties">
        <dt>path</dt>
        <dd>请求地址。</dd>
        <dt>payload</dt>
        <dd>HTTP请求正文。<code>application/json</code>和<code>application/x-www-form-urlencoded</code>将被自动转换为对象。</dd>
        <dt>headers<span class="property-type">object</span></dt>
        <dd>HTTP请求头。</dd>
        <dt>queryParameters<span class="property-type">object</span></dt>
        <dd>URL 查询参数。</dd>
        <dt>pathVars<span class="property-type">object</span></dt>
        <dd>url 表达式参数。</dd>
    </dl>
    <h3>详细</h3>
    <p>节点将在配置的路径上监听特定类型的请求。路径可以完全指定，例如<code>/user</code>，或包括可以接受任何值的命名参数，例如<code>/user/{name}</code>。
        使用命名参数时，可以在<code>pathVars</code>下访问其在请求中的实际值。</p>
    <p>对于包含正文的请求（例如POST或PUT），请求的内容将作为<code>payload</code>提供。</p>
    <p>如果可以确定请求的内容类型，则正文将被解析为任何适当的类型。例如，<code>application/json</code>将被解析为其JSON对象表示。</p>

</script>

<script type="text/x-red" data-help-name="http response">
    <p>将响应发送回从HTTP输入节点接收的请求。</p>

    <p>将上游节点输入的数据作为响应内容,响应给上游的HTTP请求。</p>
    <h3>输入</h3>
    <dl class="message-properties">
        <dt>payload <span class="property-type">string</span></dt>
        <dd>响应的正文。</dd>
        <dt class="optional">status <span class="property-type">数值</span></dt>
        <dd>设置HTTP响应状态吗，默认：200。</dd>
        <dt class="optional">headers <span class="property-type">object</span></dt>
        <dd>设置HTTP响应头。格式：<code>{"header":"value"}</code></dd>
<!--        <dt class="optional">cookies <span class="property-type">object</span></dt>-->
<!--        <dd>如果设置，则可用于设置或删除cookie。</dd>-->
    </dl>
    <h3>详细</h3>
    <p>还可以在节点本身内设置<code>status</code>和<code>headers</code>。如果在节点内设置了属性，则不能被相应的message属性覆盖。</p>
    <!--    <h4>Cookie处理</h4>-->
    <!--    <p><code>cookies</code>属性必须是名称/值对的对象。该值可以是使用默认选项设置cookie值的字符串，也可以是options对象。<p>-->
    <!--    <p>下面的示例设置两个cookie-一个名为<code>name</code>的值为<code>nick</code>，另一个名为<code>session</code>的值为<code>1234</code>，并且有效期设置为15分钟。</p>-->
    <!--    <pre>-->
    <!--msg.cookies = {-->
    <!--    name: 'nick',-->
    <!--    session: {-->
    <!--        value: '1234',-->
    <!--        maxAge: 900000-->
    <!--    }-->
    <!--}</pre>-->
    <!--    <p>有效选项包括：</p>-->
    <!--    <ul>-->
    <!--    <li><code>domain</code> - (字符串) Cookie的域名</li>-->
    <!--    <li><code>expires</code> - (日期) GMT标准时间的到期日。如果未指定或设置为0，则创建会话cookie</li>-->
    <!--    <li><code>maxAge</code> - (字符串) 相对于当前时间的到期日期（以毫秒为单位）</li>-->
    <!--    <li><code>path</code> - (字符串) Cookie的路径。默认为/</li>-->
    <!--    <li><code>value</code> - (字符串) Cookie使用的值</li>-->
    <!--    </ul>-->
    <!--    <p>要删除Cookie，请将其<code>value</code>设置为<code>null</code>。</p>-->

</script>
